1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package com.google.common.collect.testing;
18
19 import com.google.common.annotations.GwtCompatible;
20
21 import java.util.List;
22 import java.util.Map;
23 import java.util.Set;
24
25
26
27
28
29
30 @GwtCompatible
31 public abstract class TestMapEntrySetGenerator<K, V>
32 implements TestSetGenerator<Map.Entry<K, V>> {
33 private final SampleElements<K> keys;
34 private final SampleElements<V> values;
35
36 protected TestMapEntrySetGenerator(
37 SampleElements<K> keys, SampleElements<V> values) {
38 this.keys = keys;
39 this.values = values;
40 }
41
42 @Override
43 public SampleElements<Map.Entry<K, V>> samples() {
44 return SampleElements.mapEntries(keys, values);
45 }
46
47 @Override
48 public Set<Map.Entry<K, V>> create(Object... elements) {
49 Map.Entry<K, V>[] entries = createArray(elements.length);
50 System.arraycopy(elements, 0, entries, 0, elements.length);
51 return createFromEntries(entries);
52 }
53
54 public abstract Set<Map.Entry<K, V>> createFromEntries(
55 Map.Entry<K, V>[] entries);
56
57 @Override
58 @SuppressWarnings("unchecked")
59 public Map.Entry<K, V>[] createArray(int length) {
60 return new Map.Entry[length];
61 }
62
63
64 @Override
65 public List<Map.Entry<K, V>> order(List<Map.Entry<K, V>> insertionOrder) {
66 return insertionOrder;
67 }
68 }